﻿#pragma once

#include <unordered_map>

#include "D3DUtil.h"

class ShaderAndLayoutManager
{
public:
    virtual  void BuildShaderAndLayout() = 0;

public:
    const std::unordered_map<std::string,Microsoft::WRL::ComPtr<ID3DBlob>>& GetShaders() const;
    Microsoft::WRL::ComPtr<ID3DBlob> GetShader(const std::string& name);
    
protected:
    std::unordered_map<std::string, Microsoft::WRL::ComPtr<ID3DBlob>> mShaders;
};
